package old_go_learn

import (
	"fmt"
	"time"
)


//全局变量,创建一个channel
var ch = make(chan  int)

//定义一个打印机,参数为字符串,按每个字符打印
//打印机属于公共资源
func Printer(str string){
	for _,data := range str{
		//fmt.Printf("key=%d,value=%c\n",key,data)
		fmt.Printf("%c",data)
		time.Sleep(time.Millisecond*300)
	}
	fmt.Printf("\n")
}

func person1(){
	Printer("hello")
	ch<-666   //给通道写数据，发送
}

func person2(){
	<-ch      //从管道取数据，接收，如果通道没有数据，就会阻塞
	Printer("world")
}


func main(){
	go person1()
	go person2()
	
	//死循环，不让主协程退出
	for{
		;
	}
}